package com.nnnu.wsnackshop.pojo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 骑手统计数据VO
 */
@Data
@Schema(description = "骑手统计数据视图对象")
public class RiderStatsVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "骑手ID")
    private Integer id;

    @Schema(description = "今日订单数")
    private Integer todayOrderCount;

    @Schema(description = "本周订单数")
    private Integer weekOrderCount;

    @Schema(description = "本月订单数")
    private Integer monthOrderCount;

    @Schema(description = "总订单数")
    private Integer totalOrderCount;

    @Schema(description = "今日完成订单数")
    private Integer todayCompletedOrderCount;

    @Schema(description = "平均配送时间(分钟)")
    private Integer avgDeliveryTime;

    @Schema(description = "准时率(%)")
    private BigDecimal onTimeRate;

    @Schema(description = "评分总数")
    private Integer ratingCount;

    @Schema(description = "1星评分数")
    private Integer oneStarCount;

    @Schema(description = "2星评分数")
    private Integer twoStarCount;

    @Schema(description = "3星评分数")
    private Integer threeStarCount;

    @Schema(description = "4星评分数")
    private Integer fourStarCount;

    @Schema(description = "5星评分数")
    private Integer fiveStarCount;

    @Schema(description = "平均评分")
    private BigDecimal avgRating;

    @Schema(description = "好评率(%)")
    private BigDecimal goodRatingRate;

    @Schema(description = "本月收入")
    private BigDecimal monthIncome;

    @Schema(description = "总收入")
    private BigDecimal totalIncome;
}